﻿package pluginfw
{

    public class NumberUtils extends Object
    {

        public function NumberUtils()
        {
            return;
        }// end function

        public static function rightMove(param1:Number, param2:int) : Number
        {
            var _loc_3:* = Math.pow(2, param2);
            return Math.floor(param1 / _loc_3);
        }// end function

        public static function leftMove(param1:Number, param2:int) : Number
        {
            var _loc_3:* = Math.pow(2, param2);
            return param1 * _loc_3;
        }// end function

        public static function or(param1:Number, param2:Number) : Number
        {
            var _loc_3:* = uint(param1 / (4294967295 + 1));
            var _loc_4:* = uint(param1 % (4294967295 + 1));
            var _loc_5:* = uint(param2 / (4294967295 + 1));
            var _loc_6:* = uint(param2 % (4294967295 + 1));
            return Number(_loc_3 | _loc_5) * Number((4294967295 + 1)) + Number(_loc_4 | _loc_6);
        }// end function

        public static function xor(param1:Number, param2:Number) : Number
        {
            var _loc_3:* = uint(param1 / (4294967295 + 1));
            var _loc_4:* = uint(param1 % (4294967295 + 1));
            var _loc_5:* = uint(param2 / (4294967295 + 1));
            var _loc_6:* = param2 & 4294967295;
            return Number(_loc_3 ^ _loc_5) * Number((4294967295 + 1)) + Number(_loc_4 ^ _loc_6);
        }// end function

        public static function getLow(param1:Number) : Number
        {
            var _loc_2:* = uint(param1 % (4294967295 + 1));
            return _loc_2;
        }// end function

        public static function getHigh(param1:Number) : Number
        {
            var _loc_2:* = uint(param1 / (4294967295 + 1));
            return _loc_2;
        }// end function

        public static function makeString(param1:int, param2:int, param3:int) : String
        {
            var _loc_6:int = 0;
            var _loc_4:* = param1.toString(param3);
            var _loc_5:* = param1.toString(param3).length - param2;
            if (param1.toString(param3).length - param2 > 0)
            {
                param1 = Math.round(param1 / _loc_5);
                _loc_4 = param1.toString(param3) + "E" + _loc_5;
            }
            else
            {
                _loc_5 = -_loc_5;
                _loc_6 = 0;
                while (_loc_6 < _loc_5)
                {
                    
                    _loc_4 = "0" + _loc_4;
                    _loc_6++;
                }
            }
            return _loc_4;
        }// end function

    }
}
